The present invention relates generally to multi-processor technology, and more specifically, to queue management in a multi-processor environment.
Multi-processor or parallel-processor designs are increasingly utilized for their ability to improve computing speeds, performance, and reliability relative to single processor designs. A multi-processor system includes multiple independent processors, which can execute multiple instructions in parallel, substantially increasing processing speed.
Although multi-processor systems typically enhance the performance of a computer system, the multiple processors also create technical problems, such as managing multiple processors accessing a shared memory at the same time. Orchestration of activity between multiple processors is frequently achieved using queues stored in a common memory space. Processors generally must inspect the queues and/or communicate with other processors to avoid conflicts due to multiple processors accessing a queue.